package cn.com.xyc.pojo;

import java.util.ArrayList;
import java.util.Date;
import java.util.Iterator;
import java.util.List;

public class PicInfoExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public PicInfoExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        protected void addCriterionForJDBCDate(String condition, Date value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            addCriterion(condition, new java.sql.Date(value.getTime()), property);
        }

        protected void addCriterionForJDBCDate(String condition, List<Date> values, String property) {
            if (values == null || values.size() == 0) {
                throw new RuntimeException("Value list for " + property + " cannot be null or empty");
            }
            List<java.sql.Date> dateList = new ArrayList<java.sql.Date>();
            Iterator<Date> iter = values.iterator();
            while (iter.hasNext()) {
                dateList.add(new java.sql.Date(iter.next().getTime()));
            }
            addCriterion(condition, dateList, property);
        }

        protected void addCriterionForJDBCDate(String condition, Date value1, Date value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            addCriterion(condition, new java.sql.Date(value1.getTime()), new java.sql.Date(value2.getTime()), property);
        }

        public Criteria andIdIsNull() {
            addCriterion("ID is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("ID is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(String value) {
            addCriterion("ID =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(String value) {
            addCriterion("ID <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(String value) {
            addCriterion("ID >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(String value) {
            addCriterion("ID >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(String value) {
            addCriterion("ID <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(String value) {
            addCriterion("ID <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLike(String value) {
            addCriterion("ID like", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotLike(String value) {
            addCriterion("ID not like", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<String> values) {
            addCriterion("ID in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<String> values) {
            addCriterion("ID not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(String value1, String value2) {
            addCriterion("ID between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(String value1, String value2) {
            addCriterion("ID not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andPicGroupidIsNull() {
            addCriterion("PIC_GROUPID is null");
            return (Criteria) this;
        }

        public Criteria andPicGroupidIsNotNull() {
            addCriterion("PIC_GROUPID is not null");
            return (Criteria) this;
        }

        public Criteria andPicGroupidEqualTo(String value) {
            addCriterion("PIC_GROUPID =", value, "picGroupid");
            return (Criteria) this;
        }

        public Criteria andPicGroupidNotEqualTo(String value) {
            addCriterion("PIC_GROUPID <>", value, "picGroupid");
            return (Criteria) this;
        }

        public Criteria andPicGroupidGreaterThan(String value) {
            addCriterion("PIC_GROUPID >", value, "picGroupid");
            return (Criteria) this;
        }

        public Criteria andPicGroupidGreaterThanOrEqualTo(String value) {
            addCriterion("PIC_GROUPID >=", value, "picGroupid");
            return (Criteria) this;
        }

        public Criteria andPicGroupidLessThan(String value) {
            addCriterion("PIC_GROUPID <", value, "picGroupid");
            return (Criteria) this;
        }

        public Criteria andPicGroupidLessThanOrEqualTo(String value) {
            addCriterion("PIC_GROUPID <=", value, "picGroupid");
            return (Criteria) this;
        }

        public Criteria andPicGroupidLike(String value) {
            addCriterion("PIC_GROUPID like", value, "picGroupid");
            return (Criteria) this;
        }

        public Criteria andPicGroupidNotLike(String value) {
            addCriterion("PIC_GROUPID not like", value, "picGroupid");
            return (Criteria) this;
        }

        public Criteria andPicGroupidIn(List<String> values) {
            addCriterion("PIC_GROUPID in", values, "picGroupid");
            return (Criteria) this;
        }

        public Criteria andPicGroupidNotIn(List<String> values) {
            addCriterion("PIC_GROUPID not in", values, "picGroupid");
            return (Criteria) this;
        }

        public Criteria andPicGroupidBetween(String value1, String value2) {
            addCriterion("PIC_GROUPID between", value1, value2, "picGroupid");
            return (Criteria) this;
        }

        public Criteria andPicGroupidNotBetween(String value1, String value2) {
            addCriterion("PIC_GROUPID not between", value1, value2, "picGroupid");
            return (Criteria) this;
        }

        public Criteria andPicNameIsNull() {
            addCriterion("PIC_NAME is null");
            return (Criteria) this;
        }

        public Criteria andPicNameIsNotNull() {
            addCriterion("PIC_NAME is not null");
            return (Criteria) this;
        }

        public Criteria andPicNameEqualTo(String value) {
            addCriterion("PIC_NAME =", value, "picName");
            return (Criteria) this;
        }

        public Criteria andPicNameNotEqualTo(String value) {
            addCriterion("PIC_NAME <>", value, "picName");
            return (Criteria) this;
        }

        public Criteria andPicNameGreaterThan(String value) {
            addCriterion("PIC_NAME >", value, "picName");
            return (Criteria) this;
        }

        public Criteria andPicNameGreaterThanOrEqualTo(String value) {
            addCriterion("PIC_NAME >=", value, "picName");
            return (Criteria) this;
        }

        public Criteria andPicNameLessThan(String value) {
            addCriterion("PIC_NAME <", value, "picName");
            return (Criteria) this;
        }

        public Criteria andPicNameLessThanOrEqualTo(String value) {
            addCriterion("PIC_NAME <=", value, "picName");
            return (Criteria) this;
        }

        public Criteria andPicNameLike(String value) {
            addCriterion("PIC_NAME like", value, "picName");
            return (Criteria) this;
        }

        public Criteria andPicNameNotLike(String value) {
            addCriterion("PIC_NAME not like", value, "picName");
            return (Criteria) this;
        }

        public Criteria andPicNameIn(List<String> values) {
            addCriterion("PIC_NAME in", values, "picName");
            return (Criteria) this;
        }

        public Criteria andPicNameNotIn(List<String> values) {
            addCriterion("PIC_NAME not in", values, "picName");
            return (Criteria) this;
        }

        public Criteria andPicNameBetween(String value1, String value2) {
            addCriterion("PIC_NAME between", value1, value2, "picName");
            return (Criteria) this;
        }

        public Criteria andPicNameNotBetween(String value1, String value2) {
            addCriterion("PIC_NAME not between", value1, value2, "picName");
            return (Criteria) this;
        }

        public Criteria andPicCreateTimeIsNull() {
            addCriterion("PIC_CREATE_TIME is null");
            return (Criteria) this;
        }

        public Criteria andPicCreateTimeIsNotNull() {
            addCriterion("PIC_CREATE_TIME is not null");
            return (Criteria) this;
        }

        public Criteria andPicCreateTimeEqualTo(Date value) {
            addCriterionForJDBCDate("PIC_CREATE_TIME =", value, "picCreateTime");
            return (Criteria) this;
        }

        public Criteria andPicCreateTimeNotEqualTo(Date value) {
            addCriterionForJDBCDate("PIC_CREATE_TIME <>", value, "picCreateTime");
            return (Criteria) this;
        }

        public Criteria andPicCreateTimeGreaterThan(Date value) {
            addCriterionForJDBCDate("PIC_CREATE_TIME >", value, "picCreateTime");
            return (Criteria) this;
        }

        public Criteria andPicCreateTimeGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("PIC_CREATE_TIME >=", value, "picCreateTime");
            return (Criteria) this;
        }

        public Criteria andPicCreateTimeLessThan(Date value) {
            addCriterionForJDBCDate("PIC_CREATE_TIME <", value, "picCreateTime");
            return (Criteria) this;
        }

        public Criteria andPicCreateTimeLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("PIC_CREATE_TIME <=", value, "picCreateTime");
            return (Criteria) this;
        }

        public Criteria andPicCreateTimeIn(List<Date> values) {
            addCriterionForJDBCDate("PIC_CREATE_TIME in", values, "picCreateTime");
            return (Criteria) this;
        }

        public Criteria andPicCreateTimeNotIn(List<Date> values) {
            addCriterionForJDBCDate("PIC_CREATE_TIME not in", values, "picCreateTime");
            return (Criteria) this;
        }

        public Criteria andPicCreateTimeBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("PIC_CREATE_TIME between", value1, value2, "picCreateTime");
            return (Criteria) this;
        }

        public Criteria andPicCreateTimeNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("PIC_CREATE_TIME not between", value1, value2, "picCreateTime");
            return (Criteria) this;
        }

        public Criteria andPicCreateUserIsNull() {
            addCriterion("PIC_CREATE_USER is null");
            return (Criteria) this;
        }

        public Criteria andPicCreateUserIsNotNull() {
            addCriterion("PIC_CREATE_USER is not null");
            return (Criteria) this;
        }

        public Criteria andPicCreateUserEqualTo(String value) {
            addCriterion("PIC_CREATE_USER =", value, "picCreateUser");
            return (Criteria) this;
        }

        public Criteria andPicCreateUserNotEqualTo(String value) {
            addCriterion("PIC_CREATE_USER <>", value, "picCreateUser");
            return (Criteria) this;
        }

        public Criteria andPicCreateUserGreaterThan(String value) {
            addCriterion("PIC_CREATE_USER >", value, "picCreateUser");
            return (Criteria) this;
        }

        public Criteria andPicCreateUserGreaterThanOrEqualTo(String value) {
            addCriterion("PIC_CREATE_USER >=", value, "picCreateUser");
            return (Criteria) this;
        }

        public Criteria andPicCreateUserLessThan(String value) {
            addCriterion("PIC_CREATE_USER <", value, "picCreateUser");
            return (Criteria) this;
        }

        public Criteria andPicCreateUserLessThanOrEqualTo(String value) {
            addCriterion("PIC_CREATE_USER <=", value, "picCreateUser");
            return (Criteria) this;
        }

        public Criteria andPicCreateUserLike(String value) {
            addCriterion("PIC_CREATE_USER like", value, "picCreateUser");
            return (Criteria) this;
        }

        public Criteria andPicCreateUserNotLike(String value) {
            addCriterion("PIC_CREATE_USER not like", value, "picCreateUser");
            return (Criteria) this;
        }

        public Criteria andPicCreateUserIn(List<String> values) {
            addCriterion("PIC_CREATE_USER in", values, "picCreateUser");
            return (Criteria) this;
        }

        public Criteria andPicCreateUserNotIn(List<String> values) {
            addCriterion("PIC_CREATE_USER not in", values, "picCreateUser");
            return (Criteria) this;
        }

        public Criteria andPicCreateUserBetween(String value1, String value2) {
            addCriterion("PIC_CREATE_USER between", value1, value2, "picCreateUser");
            return (Criteria) this;
        }

        public Criteria andPicCreateUserNotBetween(String value1, String value2) {
            addCriterion("PIC_CREATE_USER not between", value1, value2, "picCreateUser");
            return (Criteria) this;
        }

        public Criteria andPicUploadAddressIsNull() {
            addCriterion("PIC_UPLOAD_ADDRESS is null");
            return (Criteria) this;
        }

        public Criteria andPicUploadAddressIsNotNull() {
            addCriterion("PIC_UPLOAD_ADDRESS is not null");
            return (Criteria) this;
        }

        public Criteria andPicUploadAddressEqualTo(String value) {
            addCriterion("PIC_UPLOAD_ADDRESS =", value, "picUploadAddress");
            return (Criteria) this;
        }

        public Criteria andPicUploadAddressNotEqualTo(String value) {
            addCriterion("PIC_UPLOAD_ADDRESS <>", value, "picUploadAddress");
            return (Criteria) this;
        }

        public Criteria andPicUploadAddressGreaterThan(String value) {
            addCriterion("PIC_UPLOAD_ADDRESS >", value, "picUploadAddress");
            return (Criteria) this;
        }

        public Criteria andPicUploadAddressGreaterThanOrEqualTo(String value) {
            addCriterion("PIC_UPLOAD_ADDRESS >=", value, "picUploadAddress");
            return (Criteria) this;
        }

        public Criteria andPicUploadAddressLessThan(String value) {
            addCriterion("PIC_UPLOAD_ADDRESS <", value, "picUploadAddress");
            return (Criteria) this;
        }

        public Criteria andPicUploadAddressLessThanOrEqualTo(String value) {
            addCriterion("PIC_UPLOAD_ADDRESS <=", value, "picUploadAddress");
            return (Criteria) this;
        }

        public Criteria andPicUploadAddressLike(String value) {
            addCriterion("PIC_UPLOAD_ADDRESS like", value, "picUploadAddress");
            return (Criteria) this;
        }

        public Criteria andPicUploadAddressNotLike(String value) {
            addCriterion("PIC_UPLOAD_ADDRESS not like", value, "picUploadAddress");
            return (Criteria) this;
        }

        public Criteria andPicUploadAddressIn(List<String> values) {
            addCriterion("PIC_UPLOAD_ADDRESS in", values, "picUploadAddress");
            return (Criteria) this;
        }

        public Criteria andPicUploadAddressNotIn(List<String> values) {
            addCriterion("PIC_UPLOAD_ADDRESS not in", values, "picUploadAddress");
            return (Criteria) this;
        }

        public Criteria andPicUploadAddressBetween(String value1, String value2) {
            addCriterion("PIC_UPLOAD_ADDRESS between", value1, value2, "picUploadAddress");
            return (Criteria) this;
        }

        public Criteria andPicUploadAddressNotBetween(String value1, String value2) {
            addCriterion("PIC_UPLOAD_ADDRESS not between", value1, value2, "picUploadAddress");
            return (Criteria) this;
        }

        public Criteria andPicWidthIsNull() {
            addCriterion("PIC_WIDTH is null");
            return (Criteria) this;
        }

        public Criteria andPicWidthIsNotNull() {
            addCriterion("PIC_WIDTH is not null");
            return (Criteria) this;
        }

        public Criteria andPicWidthEqualTo(String value) {
            addCriterion("PIC_WIDTH =", value, "picWidth");
            return (Criteria) this;
        }

        public Criteria andPicWidthNotEqualTo(String value) {
            addCriterion("PIC_WIDTH <>", value, "picWidth");
            return (Criteria) this;
        }

        public Criteria andPicWidthGreaterThan(String value) {
            addCriterion("PIC_WIDTH >", value, "picWidth");
            return (Criteria) this;
        }

        public Criteria andPicWidthGreaterThanOrEqualTo(String value) {
            addCriterion("PIC_WIDTH >=", value, "picWidth");
            return (Criteria) this;
        }

        public Criteria andPicWidthLessThan(String value) {
            addCriterion("PIC_WIDTH <", value, "picWidth");
            return (Criteria) this;
        }

        public Criteria andPicWidthLessThanOrEqualTo(String value) {
            addCriterion("PIC_WIDTH <=", value, "picWidth");
            return (Criteria) this;
        }

        public Criteria andPicWidthLike(String value) {
            addCriterion("PIC_WIDTH like", value, "picWidth");
            return (Criteria) this;
        }

        public Criteria andPicWidthNotLike(String value) {
            addCriterion("PIC_WIDTH not like", value, "picWidth");
            return (Criteria) this;
        }

        public Criteria andPicWidthIn(List<String> values) {
            addCriterion("PIC_WIDTH in", values, "picWidth");
            return (Criteria) this;
        }

        public Criteria andPicWidthNotIn(List<String> values) {
            addCriterion("PIC_WIDTH not in", values, "picWidth");
            return (Criteria) this;
        }

        public Criteria andPicWidthBetween(String value1, String value2) {
            addCriterion("PIC_WIDTH between", value1, value2, "picWidth");
            return (Criteria) this;
        }

        public Criteria andPicWidthNotBetween(String value1, String value2) {
            addCriterion("PIC_WIDTH not between", value1, value2, "picWidth");
            return (Criteria) this;
        }

        public Criteria andPicHeightIsNull() {
            addCriterion("PIC_HEIGHT is null");
            return (Criteria) this;
        }

        public Criteria andPicHeightIsNotNull() {
            addCriterion("PIC_HEIGHT is not null");
            return (Criteria) this;
        }

        public Criteria andPicHeightEqualTo(String value) {
            addCriterion("PIC_HEIGHT =", value, "picHeight");
            return (Criteria) this;
        }

        public Criteria andPicHeightNotEqualTo(String value) {
            addCriterion("PIC_HEIGHT <>", value, "picHeight");
            return (Criteria) this;
        }

        public Criteria andPicHeightGreaterThan(String value) {
            addCriterion("PIC_HEIGHT >", value, "picHeight");
            return (Criteria) this;
        }

        public Criteria andPicHeightGreaterThanOrEqualTo(String value) {
            addCriterion("PIC_HEIGHT >=", value, "picHeight");
            return (Criteria) this;
        }

        public Criteria andPicHeightLessThan(String value) {
            addCriterion("PIC_HEIGHT <", value, "picHeight");
            return (Criteria) this;
        }

        public Criteria andPicHeightLessThanOrEqualTo(String value) {
            addCriterion("PIC_HEIGHT <=", value, "picHeight");
            return (Criteria) this;
        }

        public Criteria andPicHeightLike(String value) {
            addCriterion("PIC_HEIGHT like", value, "picHeight");
            return (Criteria) this;
        }

        public Criteria andPicHeightNotLike(String value) {
            addCriterion("PIC_HEIGHT not like", value, "picHeight");
            return (Criteria) this;
        }

        public Criteria andPicHeightIn(List<String> values) {
            addCriterion("PIC_HEIGHT in", values, "picHeight");
            return (Criteria) this;
        }

        public Criteria andPicHeightNotIn(List<String> values) {
            addCriterion("PIC_HEIGHT not in", values, "picHeight");
            return (Criteria) this;
        }

        public Criteria andPicHeightBetween(String value1, String value2) {
            addCriterion("PIC_HEIGHT between", value1, value2, "picHeight");
            return (Criteria) this;
        }

        public Criteria andPicHeightNotBetween(String value1, String value2) {
            addCriterion("PIC_HEIGHT not between", value1, value2, "picHeight");
            return (Criteria) this;
        }

        public Criteria andPicSizeIsNull() {
            addCriterion("PIC_SIZE is null");
            return (Criteria) this;
        }

        public Criteria andPicSizeIsNotNull() {
            addCriterion("PIC_SIZE is not null");
            return (Criteria) this;
        }

        public Criteria andPicSizeEqualTo(String value) {
            addCriterion("PIC_SIZE =", value, "picSize");
            return (Criteria) this;
        }

        public Criteria andPicSizeNotEqualTo(String value) {
            addCriterion("PIC_SIZE <>", value, "picSize");
            return (Criteria) this;
        }

        public Criteria andPicSizeGreaterThan(String value) {
            addCriterion("PIC_SIZE >", value, "picSize");
            return (Criteria) this;
        }

        public Criteria andPicSizeGreaterThanOrEqualTo(String value) {
            addCriterion("PIC_SIZE >=", value, "picSize");
            return (Criteria) this;
        }

        public Criteria andPicSizeLessThan(String value) {
            addCriterion("PIC_SIZE <", value, "picSize");
            return (Criteria) this;
        }

        public Criteria andPicSizeLessThanOrEqualTo(String value) {
            addCriterion("PIC_SIZE <=", value, "picSize");
            return (Criteria) this;
        }

        public Criteria andPicSizeLike(String value) {
            addCriterion("PIC_SIZE like", value, "picSize");
            return (Criteria) this;
        }

        public Criteria andPicSizeNotLike(String value) {
            addCriterion("PIC_SIZE not like", value, "picSize");
            return (Criteria) this;
        }

        public Criteria andPicSizeIn(List<String> values) {
            addCriterion("PIC_SIZE in", values, "picSize");
            return (Criteria) this;
        }

        public Criteria andPicSizeNotIn(List<String> values) {
            addCriterion("PIC_SIZE not in", values, "picSize");
            return (Criteria) this;
        }

        public Criteria andPicSizeBetween(String value1, String value2) {
            addCriterion("PIC_SIZE between", value1, value2, "picSize");
            return (Criteria) this;
        }

        public Criteria andPicSizeNotBetween(String value1, String value2) {
            addCriterion("PIC_SIZE not between", value1, value2, "picSize");
            return (Criteria) this;
        }

        public Criteria andPicRemarkIsNull() {
            addCriterion("PIC_REMARK is null");
            return (Criteria) this;
        }

        public Criteria andPicRemarkIsNotNull() {
            addCriterion("PIC_REMARK is not null");
            return (Criteria) this;
        }

        public Criteria andPicRemarkEqualTo(String value) {
            addCriterion("PIC_REMARK =", value, "picRemark");
            return (Criteria) this;
        }

        public Criteria andPicRemarkNotEqualTo(String value) {
            addCriterion("PIC_REMARK <>", value, "picRemark");
            return (Criteria) this;
        }

        public Criteria andPicRemarkGreaterThan(String value) {
            addCriterion("PIC_REMARK >", value, "picRemark");
            return (Criteria) this;
        }

        public Criteria andPicRemarkGreaterThanOrEqualTo(String value) {
            addCriterion("PIC_REMARK >=", value, "picRemark");
            return (Criteria) this;
        }

        public Criteria andPicRemarkLessThan(String value) {
            addCriterion("PIC_REMARK <", value, "picRemark");
            return (Criteria) this;
        }

        public Criteria andPicRemarkLessThanOrEqualTo(String value) {
            addCriterion("PIC_REMARK <=", value, "picRemark");
            return (Criteria) this;
        }

        public Criteria andPicRemarkLike(String value) {
            addCriterion("PIC_REMARK like", value, "picRemark");
            return (Criteria) this;
        }

        public Criteria andPicRemarkNotLike(String value) {
            addCriterion("PIC_REMARK not like", value, "picRemark");
            return (Criteria) this;
        }

        public Criteria andPicRemarkIn(List<String> values) {
            addCriterion("PIC_REMARK in", values, "picRemark");
            return (Criteria) this;
        }

        public Criteria andPicRemarkNotIn(List<String> values) {
            addCriterion("PIC_REMARK not in", values, "picRemark");
            return (Criteria) this;
        }

        public Criteria andPicRemarkBetween(String value1, String value2) {
            addCriterion("PIC_REMARK between", value1, value2, "picRemark");
            return (Criteria) this;
        }

        public Criteria andPicRemarkNotBetween(String value1, String value2) {
            addCriterion("PIC_REMARK not between", value1, value2, "picRemark");
            return (Criteria) this;
        }

        public Criteria andPicVisibleIsNull() {
            addCriterion("PIC_VISIBLE is null");
            return (Criteria) this;
        }

        public Criteria andPicVisibleIsNotNull() {
            addCriterion("PIC_VISIBLE is not null");
            return (Criteria) this;
        }

        public Criteria andPicVisibleEqualTo(Integer value) {
            addCriterion("PIC_VISIBLE =", value, "picVisible");
            return (Criteria) this;
        }

        public Criteria andPicVisibleNotEqualTo(Integer value) {
            addCriterion("PIC_VISIBLE <>", value, "picVisible");
            return (Criteria) this;
        }

        public Criteria andPicVisibleGreaterThan(Integer value) {
            addCriterion("PIC_VISIBLE >", value, "picVisible");
            return (Criteria) this;
        }

        public Criteria andPicVisibleGreaterThanOrEqualTo(Integer value) {
            addCriterion("PIC_VISIBLE >=", value, "picVisible");
            return (Criteria) this;
        }

        public Criteria andPicVisibleLessThan(Integer value) {
            addCriterion("PIC_VISIBLE <", value, "picVisible");
            return (Criteria) this;
        }

        public Criteria andPicVisibleLessThanOrEqualTo(Integer value) {
            addCriterion("PIC_VISIBLE <=", value, "picVisible");
            return (Criteria) this;
        }

        public Criteria andPicVisibleIn(List<Integer> values) {
            addCriterion("PIC_VISIBLE in", values, "picVisible");
            return (Criteria) this;
        }

        public Criteria andPicVisibleNotIn(List<Integer> values) {
            addCriterion("PIC_VISIBLE not in", values, "picVisible");
            return (Criteria) this;
        }

        public Criteria andPicVisibleBetween(Integer value1, Integer value2) {
            addCriterion("PIC_VISIBLE between", value1, value2, "picVisible");
            return (Criteria) this;
        }

        public Criteria andPicVisibleNotBetween(Integer value1, Integer value2) {
            addCriterion("PIC_VISIBLE not between", value1, value2, "picVisible");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}